這堂課比平常稍微長了一些,大約三十分鐘,課程中提到了許多觀念與細節,是許多人在開發中也常遇到的問題,而老師用了比較快速或是周全的方式來解決這些問題。有空沒事的同學可以來聽聽。
在輸入框輸入文字後enter或點+Add Item可以加入項目,而點選項目可以勾選或取消勾選。最重要的是,加入後的清單「重新整理後不會消失」!糾竟是怎麼做到的呢?讓我們繼續看下去...
e.preventDefault()
:避免submit時候reload pagelocalStorage.setItem()
:本實作的重點之一,可以將字串儲存在瀏覽器的儲存空間。若要從chrome來看,在開發人員工具→Application頁籤→Storage項目中的Local Storage→file://,就可以看到你存的[key,value]。setItem()參數要放自訂的item名稱,也就是key,以及item內容,實作中將內容包成JSON格式localStorage.getItem()
:取得儲存在Local Storage的內容,參數是你在setItem時候的key值latesList.innerHTML = plates.map((plate, i) => {
return `
<li>
<input type="checkbox" data-index=${i} id="item${i}" ${plate.done ? 'checked' : ''} />
<label for="item${i}">${plate.text}</label>
</li>
`;
).join('');
``